Skip to content

feat: add data_uses to datasets, deprecate data_purposes#40

Open
galvana wants to merge 1 commit into
mainfrom
feat/dataset-data-uses
Open

feat: add data_uses to datasets, deprecate data_purposes#40
galvana wants to merge 1 commit into
mainfrom
feat/dataset-data-uses

Conversation

@galvana

@galvana galvana commented Jul 21, 2026

Copy link
Copy Markdown

What

Adds a data_uses field to Dataset, DatasetCollection, and DatasetField, alongside the now-deprecated data_purposes. A model validator mirrors the two so a dataset always carries both.

Why

data_purposes (added in #39, released in 3.1.x) is being renamed to data_uses to match Fides taxonomy naming (data_use). Because data_purposes is already released and persisted (collection/field-level lives in dataset collections JSON), a straight rename would break backward compatibility. This uses the expand/contract (parallel change) pattern:

  • Now (this PR): add data_uses, keep data_purposes (deprecated), mirror both via a validator (dual-write). Readers on either name resolve.
  • Later: migrate readers to data_uses, stop writing data_purposes, then remove it.

Downstream

fidesplus consumes this: it dual-reads both keys and will bump its fideslang pin to the release that includes this change. See the paired fidesplus PR.

🤖 Generated with Claude Code

Add a `data_uses` field to Dataset, DatasetCollection, and DatasetField
alongside the now-deprecated `data_purposes`. A model validator mirrors the
two so a dataset always carries both, letting readers on either name resolve
during the rename (expand/contract). `data_purposes` will be removed in a
later release once readers have migrated.

Co-Authored-By: Claude Opus 4.8 <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant